<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        .father {
            overflow: hidden;
            width: 300px;
            height: 300px;
            margin: 100px auto;
            background-color: pink;
            text-align: center;
        }

        .son {
            width: 200px;
            height: 200px;
            margin: 50px;
            background-color: purple;
            line-height: 200px;
            color: #fff;
        }
    </style>
</head>
<body>
    <button id='qq'>你好啊</button>
    <div class="father">father盒子
        <div class="son">son盒子</div>
    </div>
    <script>
        /*
            事件流描述的是从页面中接收事件的顺序。
            DOM 事件流：事件发生时会在元素节点之间按照特定的顺序传播，
            事件只能在捕获或冒泡阶段触发，只能在其中一个阶段触发。
            true 表示在捕获阶段触发，默认是 false
        */

        var son = document.querySelector('.son');
        var father = document.querySelector('.father');
        son.addEventListener('click', function () {
            console.log('son');
        }, false);

        father.addEventListener('click', function () {
            console.log('father');
        }, false);

        // 捕获：document ————> html  ————> body ————> father ————> son
        //                                                         触发  
        // 冒泡：son ————> father  ————> body ————> html ————> document
        //               触发     

        var div = document.querySelector('#qq');
        div.addEventListener('click', function () {
            console.log('降温了');
        });
        // document ————> html  ————> body ————> button

        // 点击了 button 按钮，
        // 最外层，document，是否有点击事件，如果有则触发。
        // 第二层，html， 是否有点击事件，如果有则触发。
        // 第三层，body， 是否有点击事件，如果有则触发。
        // 第四层，button， 是否有点击事件，如果有则触发。
        // 从内往外扩散，再触发



    </script>
</body>
</html>